(newra) -*- mode: org; -*-

Help: [C-uc .] insert timestamp [C-cc] flip checkbox [C-uucc] partial flip checkbox [C-ct] flip TODO.

* TODO compatibility with existing Guile arrays [7/8]
  * [X] ra-slice-for-each ra-map! ra-for-each ra-cell ra-ref ra-set!
  * [X] ra-transpose ra-reverse
  * [X] make-ra make-ra-shared ra->list list->ra list->typed-ra
  * [X] ra-iota ra-i
  * [X] ra-index-map!
  * [X] ra-shape ra-dimensions
  * [X] ra-root ra-offset
  * [X] ra-equal? ra-any ra-every
  * [ ] root vectors are equivalent to rank-1 newra objects

* TODO guile-ploy functionality [3/7]
  * [X] ra-fold ra-fold*
  * [X] raw prefix matching
  * [X] generalized prefix matching
  * [ ] high level slicing
  * [ ] verbs, w/rank
  * [ ] as-ra
  * [ ] output types

* TODO ra-ra functionality [3/4]
  * [X] unsized index vectors
  * [X] tensor indices
  * [X] broadcasting
  * [ ] drag-along facility / delayed ops

* TODO replace Guile arrays [0/5]
  * [ ] truncated-print support
  * [ ] equal? support
  * [ ] hooks into C
  * [ ] compilation of literals
  * [ ] replace all names

* TODO friendlier undefined sizes [1/6]
  * [X] printing of 'd typed arrays
  * [ ] reading of 'd typed arrays
  * [ ] printing with infinite axes
  * [ ] printing with dead axes
  * [ ] reading of arrays with inf axes
  * [ ] reading of arrays with dead axes

* TODO quality of life [0/5]
  * [ ] refactor macros
  * [ ] special rank-1 (or higher!) cases for e.g. copy or fill in the unroll section (e.g. bytevector-copy).
  * [ ] loop attack heuristics (different orders...)
  * [ ] bench tracking
  * [ ] parameters to control print format (eg print sizes/strides, truncate...)
